<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>运算符</title>
  </head>
  <body>
    <script>
      //T1
      //3 + 2 +“7”的结果是什么？3 + (2 + "7")的结果又是什么？这两个表达式输出的值是什么类型？
      alert('第一题答：结果是57,结果是327输出的值是string类型')

      //T2
      //6 - false的结果是什么？为什么
      alert('第二题答：6，因为false在js中代表的值是0，所以6 - false 就是6 - 0的意思所以输出了一个number类型的6')

      //T3
      //6 - "false"和6 + "false"的结果分别是什么？结果输出值是什么数据类型？
      
      alert('第三题答： NaN , 6+false ,第一个输出了 number 第二个输出了一个 字符串类型')

      //T4
      //下面代码分别输出什么？请写出分析过程
      var a = 1;
      var b = ++a + ++a;
      
      alert("第四题：分别输出了1，4， 分析：a赋值为1，b中  ++a 是在a运算前让a+1, 然后a赋值被改变成2，然后'+'符号将2与 ++2 相加所以等于5 ")
      //T5
      //JS中哪些值通过Boolean对象转换出来的值为false
      alert("第五题：0 null undefined Nan '空字符' ")

      //T6
      //分析下面代码，写出分析过程，请问 j 和 y 分别是多少？(不要运行代码，自己分析后写出答案)
      var i = 100;
      i++;//101
      j = i++;//101+1
      y = ++j;//1+101
      console.log(y);
      console.log(j);
      alert("第六题：分析：最新的i为i++等于101，j赋值了一个i++，但是j的值为101，y赋值为++j最新的j值为1+101等于102，最后，j等于102，y等于102")
    </script>
  </body>
</html>
